home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib15.dsk / HEAD CLEANER.bas < prev    next >
BASIC Source File  |  2023-02-26  |  2KB  |  83 lines

  1. 10  REM  **********************
  2. 11  REM  *    HEAD CLEANER    *
  3. 12  REM  *    BY ART MENA     *
  4. 13  REM  * COPYRIGHT (C) 1983 *
  5. 14  REM  * BY MICROSPARC, INC *
  6. 15  REM  * LINCOLN, MA. 01773 *
  7. 16  REM  **********************
  8. 100  REM 
  9. 110  REM 
  10. 120  REM  USE THIS PROGRAM WITH
  11. 130  REM  A DISK DRIVE HEAD
  12. 140  REM  CLEANING KIT TO KEEP
  13. 150  REM  YOUR DRIVES CLEAN.
  14. 160  REM 
  15. 170  REM  JUST ENTER "RUN" AND
  16. 180  REM  FOLLOW THE DIRECTIONS.
  17. 190  REM 
  18. 200  REM 
  19. 210 B$ =  CHR$(7) + CHR$(7) + CHR$(7)
  20. 220  GOSUB 820
  21. 230  REM  GET THE DRIVE NUMBER
  22. 250  REM 
  23. 260  TEXT : HOME : POKE  -16368,0
  24. 270  VTAB 3: HTAB 12: INVERSE : PRINT " HEAD CLEANER ": NORMAL 
  25. 280  PRINT : PRINT  TAB( 13)"BY ART MENA"
  26. 290  PRINT  CHR$(7)
  27. 300  PRINT : PRINT "  ENTER THE DISK DRIVE NUMBER THAT"
  28. 310  PRINT "YOU WANT TO CLEAN (1/2,0=END)  ?"
  29. 320  PRINT "===> ";: GET DR$
  30. 330 DR =  VAL(DR$)
  31. 340  IF DR$ = "0"  THEN  TEXT : HOME : END 
  32. 350  IF DR < >1  AND DR < >2  THEN  PRINT : PRINT : FLASH : PRINT "INCORRECT DISK DRIVE";B$: NORMAL : FOR I = 1 TO 1000: NEXT I: GOTO 260
  33. 360  PRINT DR$: PRINT 
  34. 370  REM 
  35. 380  REM  PRINT DIRECTIONS
  36. 390  REM 
  37. 400  PRINT B$: PRINT "  PUT SOME CLEANING FLUID ON A 5 1/4"
  38. 410  PRINT "INCH CLEANING DISKETTE AND PLACE IT"
  39. 420  PRINT "IN DRIVE NUMBER "DR$".  PRESS  ";: INVERSE : PRINT " RETURN ": NORMAL 
  40. 430  PRINT "WHEN YOU ARE FINISHED."
  41. 440  REM 
  42. 450  POKE  -16368,0
  43. 460  IF  PEEK( -16384) < >13  AND  PEEK( -16384) < >141  THEN  GOTO 460
  44. 470  POKE  -16368,0
  45. 480  REM 
  46. 490  POKE 818,DR
  47. 500  POKE 34,10: HOME 
  48. 510  PRINT : PRINT  CHR$(7)" RUNNING THE HEAD BACK AND FORTH"
  49. 520  PRINT " 4 TIMES.  PRESS ";: INVERSE : PRINT " ESC ";: NORMAL : PRINT " TO STOP"
  50. 530  PRINT 
  51. 540  REM 
  52. 550  REM  USE THE RWTS "SEEK"
  53. 560  REM  COMMAND TO RUN
  54. 570  REM  HEAD ACROSS THE DISK
  55. 580  REM 
  56. 590  FOR CNT = 1 TO 4
  57. 600  VTAB 15: PRINT "COUNT ==> ";CNT
  58. 610  FOR TRACK = 0 TO 34
  59. 620  GOSUB 710
  60. 630  NEXT TRACK
  61. 640  FOR TRACK = 34 TO 1  STEP  -1
  62. 650  GOSUB 710
  63. 660  NEXT TRACK
  64. 670  NEXT CNT
  65. 680  PRINT : PRINT "ALL DONE !"
  66. 690  FOR I = 1 TO 1500: NEXT I: GOTO 260
  67. 700  REM  
  68. 710  REM  HEAD SEEK SUBROUTINE
  69. 720  REM 
  70. 730  IF  PEEK( -16384) = 27  OR  PEEK( -16384) = 155  THEN  POP : GOTO 260
  71. 740  VTAB 17
  72. 750  PRINT "SEEKING TRACK ==> ";TRACK;"  "
  73. 760  POKE 820,TRACK
  74. 770  CALL 837: REM  CALL RWTS
  75. 780  RETURN 
  76. 790  REM  IOCB FOR RWTS
  77. 800  DATA  1,96,1,0,0,0,65,3,0,128,0,0,0,0,0,96
  78. 810  DATA  1,0,0,239,219,160,48,169,3,32,217,3,96
  79. 820  RESTORE 
  80. 830  FOR I = 816 TO 844
  81. 840  READ D: POKE I,D
  82. 850  NEXT I
  83. 860  RETURN